//TODO: Please write code in this file

function printInventory(inputs) {


;;(function(){
    //    var result = '';
    //    var countInputs = [];
    //    for (var i = 0; i < inputs.length; i++) {
    //        if (!countInputs.length) {
    //            var input = inputs[i];
    //            input.count = 1;
    //            countInputs.push(input);
    //            continue;
    //
    //            for (var j = 0, max = countInputs.length; j < max; j++) {
    //                if (inputs[i].barcode == countInputs[j].barcode) {
    //                    countInputs[j].count++;
    //                }
    //                else if (inputs[i].barcode != countInputs[j].barcode && j === max - 1) {
    //                    inputs[i].count = 1;
    //                    countInputs.push(inputs[i]);
    //                }
    //
    //            }
    //        }
    //        var sum_money = 0;
    //        for (i = 0; i < countInputs.length; i++) {
    //            result += '名称：' + countInputs[i].name + '，数量：' + countInputs[i].count + countInputs[i].unit + '，单价：' + countInputs[i].price.toFixed(2) + '(元)，小计：' + (countInputs[i].price * countInputs[i].count).toFixed(2) + '(元)\n';
    //            sum_money += (countInputs[i].count * countInputs[i].price);
    //        }
    //        result = '***<没钱赚商店>购物清单***\n' + result + '----------------------\n' + '总计：' + sum_money.toFixed(2) + '(元)\n' + '**********************';
    //        console.log(result);
    //    }

    var countInputs = [];

    countInputs[inputs[0].barcode] = 0;

    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].barcode in countInputs) {
            countInputs[inputs[i].barcode]++;
        } else {
            countInputs[inputs[i].barcode] = 1;
        }
    }

    // console.log(countInputs);
    //var itemBarcode = inputs[0].barcode;
    //var otherInfo = {name:inputs[0].name, price:inputs[0].price, unit:inputs[0].unit};
    //var mergeInputs = [itemBarcode: otherInfo];
    //for(var j = 0; j < inputs.length; j++){
    //    if (inputs[j].barcode in mergeInputs){
    //        continue;
    //    }
    //    else
    //    {
    //        mergeInputs[inputs[j].barcode].name = inputs[j].name;
    //        mergeInputs[inputs[j].barcode].price = inputs[j].price;
    //        mergeInputs[inputs[j].barcode].unit = inputs[j].unit;
    //        console.info('qq2');
    //    }
    //
    //}
    var itemBarcode = inputs[0].barcode;
    var mergeInputs = {itemBarcode: inputs[0]};

    for (var j = 0; j < inputs.length; j++) {

        if (inputs[j].barcode in mergeInputs) {
            continue;
        } else {
            // mergeInputs[.push(inputs[j])];
        }

    }

    // console.log(mergeInputs);



    //console.info(countInputs);
});;;;;

//implements it for Zili

(function(data){

    // console.log(data)
    var  AggregationData = {} // 用字面量创建一个空对象
    var  len = data.length

    for( var i = 0, item, barcode; i<len ; i++ ){

        item = data[i]
        barcode = item['barcode']

        //检查聚合数据里面是否统计过该单品
        if( AggregationData.hasOwnProperty( barcode ) ){
            //统计价格
            // AggregationData[ barcode ]['price'] += item['price']
            //统计数量
            AggregationData[ barcode ]['counts']++
        }else{
            item['counts'] = 1
            AggregationData[ barcode ] = item
        }

    }

    //输出模板
    var tpl = [
        '***<没钱赚商店>购物清单***',
        'X', //内容占位 [1]
        '----------------------',
        '总计：{totalFee}(元)',
        '**********************'
        ]

    var items = [], item, totalFee = 0, t

    for( var barcode in AggregationData){
        item = AggregationData[barcode]
        items.push(
            '名称：'+item['name']+'，数量：'+item['counts']+item['unit']+'，单价：'
            + parseFloat(item['price']).toFixed(2)
            + '(元)，小计：'
            + ( t = parseFloat(item['price'])*item['counts'], totalFee+=t, t ).toFixed(2)
            + '(元)'
        )
    }

    //拼接模板
    tpl[1] = items.join('\n')
    tpl = tpl.join('\n')
    //替换总价
    tpl = tpl.replace('{totalFee}', totalFee.toFixed(2))

    console.log(tpl)

})(inputs)

}